// Debug Scene Node
// (c) jimon game studio

#ifndef JEH_CDEBUGSCENENODE
#define JEH_CDEBUGSCENENODE

#include "IDebugSceneNode.h"
#include "ISceneManager.h"

namespace je
{
	namespace scene
	{
		//! Debug Scene Node
		class CDebugSceneNode:public je::scene::IDebugSceneNode
		{
		protected:
			scene::ISceneManager * CurrentSceneManager;
			video::jeRenderOperation_Draw * Op;
			video::jeMaterial * Mat;
			DebugSceneNodeType CurrentType;
		public:
			//! Constructor
			CDebugSceneNode(video::IRender * Render,scene::ISceneManager * SceneManager);

			//! Destructor
			~CDebugSceneNode();

			//! Set Type
			void SetType(DebugSceneNodeType Type);

			//! On Update
			void OnUpdate();

			//! On Render
			void OnRender();

			//! Serialize
			void Serialize(core::ISerializeStream * SerializeStream);

			//! Get Node Type Name
			jeStringc GetNodeTypeName()
			{
				return jeStringc("DebugSceneNode");
			}
		};
	}
}

#endif
